package com.niuwa.p2p.core.mvc.entity;

import com.alibaba.fastjson.JSONObject;

public class JSONResultVO {

	/**
	 * 执行某系模块逻辑后，会返回一个JSONObject：{code:0,msg:"complete."}
	 * code: 执行结果状态。
	 * msg: 执行结果描述。
	 * */
	
	private int code;
	
	private String msg;
	
	private JSONObject obj;

	public JSONResultVO(){
		this.code = 0;
		this.msg = "";
	}

	public JSONResultVO(int code, String msg) {
		this.code = code;
		this.msg = msg;
	}

	public int getCode() {
		return code;
	}

	public void setCode(int code) {
		this.code = code;
	}

	public String getMsg() {
		return msg;
	}

	public void setMsg(String msg) {
		this.msg = msg;
	}

	public JSONObject getObj() {
		return obj;
	}

	public void setObj(JSONObject obj) {
		this.obj = obj;
	}

	public JSONObject getJSONObjectParamsAllowNoGiven(){
		JSONObject rs = new JSONObject();
		rs.put("code", code);
		if(null != msg && !"".equals(msg.trim())){
			rs.put("msg", msg);
		}
		if(null != obj){
			rs.put("obj", obj);
		}
		return rs;
	}
	
	public JSONObject getJSONObject(){
		JSONObject rs = new JSONObject();
		if(null == msg){
			msg = "";
		}
		if(null == obj){
			obj = new JSONObject();
		}
		rs.put("code", code);
		rs.put("msg", msg);
		rs.put("obj", obj);
		return rs;
	}
	
	@Override
	public String toString() {
		return getJSONObject().toString();
	}
}
